package vip.george.p0709;

public class P709 {


    /**
     * 方法1：
     * 直接调用String类的toLowerCase()方法
     * @param s
     * @return
     */
    public String toLowerCase(String s) {
        return s.toLowerCase();
    }

    /**
     * 方法2：
     * 遍历字符串，利用ASCII码表，将大写字母转为小写字母
     * A的ASCII码为65，a的ASCII码为97 （大写和小写差值为32，如果不知道，可以使用 int i = (int)'a'）
     * @param s
     * @return
     */
    public String toLowerCase2(String s) {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) >= 'A' && s.charAt(i) <= 'Z') {
                sb.append((char)(s.charAt(i) + 32));
            } else {
                sb.append(s.charAt(i));
            }
        }
        return sb.toString();
    }

    public static void main(String[] args) {
        P709 p = new P709();
        System.out.println("========方法1=========");
        System.out.println(p.toLowerCase("Hello"));
        System.out.println(p.toLowerCase("here"));
        System.out.println(p.toLowerCase("LOVELY"));
        System.out.println();
        System.out.println("========方法2=========");
        System.out.println(p.toLowerCase2("Hello"));
        System.out.println(p.toLowerCase2("here"));
        System.out.println(p.toLowerCase2("LOVELY"));

    }
}
